﻿Public Class ChildInfo
    Inherits GenericPerson
    Private m_bArrived As Boolean = False
    Private m_snDietMod() As String
    Private m_snMeds() As String
    Private m_snBehave() As String
    Private m_snMedical() As String
    Sub Remove(ByRef what() As String, ByVal sName As String)
        For i As Integer = 0 To UBound(what)
            If String.IsNullOrEmpty(what(i)) Then Continue For

            If what(i) = sName Then
                what(i) = ""
                Exit For
            End If
        Next
    End Sub
    Overrides ReadOnly Property IsChild() As Boolean
        Get
            Return True
        End Get
    End Property
    Sub New()
        ReDim Me.m_snBehave(0)
        ReDim Me.m_snDietMod(0)
        ReDim Me.m_snMedical(0)
        ReDim Me.m_snMeds(0)
    End Sub
    Property Arrived() As Boolean
        Get
            Return Me.m_bArrived
        End Get
        Set(ByVal value As Boolean)
            Me.m_bArrived = value
        End Set
    End Property
    Property MedicalNeeds()
        Get
            Return Me.m_snMedical
        End Get
        Set(ByVal value)
            If Me.m_snMedical Is Nothing Then
                Array.Resize(Me.m_snMedical, 1)
            Else
                Array.Resize(Me.m_snMedical, Me.m_snMedical.Length + 1)
            End If
            Me.m_snMedical(Me.m_snMedical.Length - 1) = value
        End Set
    End Property
    Property BehaviorAdjustments()
        Get
            Return Me.m_snBehave
        End Get
        Set(ByVal value)
            If Me.m_snMedical Is Nothing Then
                Array.Resize(Me.m_snBehave, 1)
            Else
                Array.Resize(Me.m_snBehave, Me.m_snBehave.Length + 1)
            End If
            Me.m_snBehave(Me.m_snBehave.Length - 1) = value
        End Set
    End Property
    Property DietAdjustments()
        Get
            Return Me.m_snDietMod
        End Get
        Set(ByVal value)
            If Me.m_snDietMod Is Nothing Then
                Array.Resize(Me.m_snDietMod, 1)
            Else
                Array.Resize(Me.m_snDietMod, Me.m_snDietMod.Length + 1)
            End If
            Me.m_snDietMod(Me.m_snDietMod.Length - 1) = value
        End Set
    End Property
    Property Medications()
        Get
            Return Me.m_snMeds
        End Get
        Set(ByVal value)
            If Me.m_snMeds Is Nothing Then
                Array.Resize(Me.m_snMeds, 1)
            Else
                Array.Resize(Me.m_snMeds, Me.m_snMeds.Length + 1)
            End If
            Me.m_snMeds(Me.m_snMeds.Length - 1) = value
        End Set
    End Property
End Class